public inheritance